1. Technical Field
The presently disclosed embodiments are directed to validating aggregate documents in a computing environment.
2. Brief Discussion of Related Art
Networks, such as intranets and the Internet, give people access to vast amounts of networked documents from different sources. Networked documents, such as web pages, documents in a network repository, and the like, are often transient. These documents can change without warning or can disappear completely.
Recently, the notion of aggregate documents has been introduced, in which an aggregate document is generated using separate individual documents from different sources (e.g., source documents). One or more pages of the source documents can be included as an ordered sequence of data pages or sub-documents in the aggregate document. In a typical implementation, the aggregate document can be formed dynamically each time a user wishes to output the aggregate document to a display or printer based on references to the location of the actual source documents. In this implementation, the data pages of the aggregate document are typically retrieved from the source documents each time the aggregate document is dynamically generated.
When aggregate documents are generated by aggregating pages from these source documents, the aggregate documents can quickly become obsolete or even unrecoverable because of the changes to the individual underlying source documents, which are used to generate the aggregate document. As a result, aggregate documents can become difficult to manage as their constituent data pages or sub-documents are subject to unilateral change, deletion, and/or relocation. For example, source documents can be moved from their reference location, edited so their content is no longer relevant, deleted from the network, and the like.
When it is time to produce a compiled copy of an aggregate document based on, for example, locations of source documents referenced by the aggregate document, some of the data pages of the aggregate document can cease to exist, can no longer be at the reference location, or can simply be different from what was expected. This can result in an incomplete, erroneous, or otherwise undesirable instance of the aggregate document. For example, missing pages can produce error pages that break up the flow of aggregate document, or can even break the sequence so that nothing is produced or printed.